Websydian v6.1 online documentationOnline documentation - Websydian v6.5

Websydian Version 5.5 SP1 - What Is New?


Websydian 5.5 SP1

Websydian Pattern Models Upgraded

The Websydian group models have been updated to CA Plex 5.0. This means that CA Plex 5.0 or later is required in order to use Websydian 5.5 SP1.

CA Plex 5.5 SP1

Websydian 5.5 is compatible with CA Plex 5.5 SP1 and the Visual C++.NET 7.1 compiler required by CA Plex 5.5 SP1. This means that Websydian 5.5 SP1 can be used with the following version of CA Plex

This version of Websydian does not support CA Plex 5.1, we are in the process of investigating this problem with CA.

Bug Fixes

ParameterStore

If the ParameterStore did not find any value for a parameter the return value was not cleared correctly. In the iSeries variant this meant that any previously found value would be returned instead of an empty value.

This has now been fixed so an empty value always is returned if no value is found for a given parameter.

GPF when using PageGeneratorWithCharConversion

The PageGeneratorWithCharConversion pattern caused a GPF when deployed on Windows 2000 or later.

This has now been fixed so PageGeneratorWithCharConversion works on all platforms.

TransacXML

TraverseAndFetch

TraverseAndFetch is a new function scoped to the XmlElement pattern. TraverseAndFetch offers a fully automated traversal and retrieval of data for an XML document defined in CA Plex.

More information can be found here.

InsertRow Performance

The InsertRow function scoped to XmlElement has been optimized for better performance. When processing large documents it is worth considering to disable the validation for the XML functions. More information can be found here.

Non-real valus of CurrentFunction

In CA Plex 5.1 non-real values scoped to the field WSYXML/CurrentFunction resulted in error message when opening action diagrams that used the field.

This has been fixed so all values scoped to WSYXML/CurrentFunction are real.

Bug in internal ObjectStore - Java

The internal ObjectStore used to store XML objects and structures contained a bug that caused the following message to appear: "Same identifier used for two different objects".

This has now been fixed.

Java

Websydian 5.5 SP1 supports Java version 1.5. To develop applications using TransacXML with Java 1.5 it is necessary to use a specialized version of the WsydXml20.jar file. This file is supplied with the Websydian distribution.

Some minor issues regarding Java version 1.4 has been fixed.

ASP scripting

A bug in the ASP scripting module caused the following error message: "WebsydianScripting error '80020009' Overflow".

This has now been fixed.

iSeries

The iSeries runtime objects has been upgraded to V5R1. This means that any iSeries installation of Websydian requires OS400 V5R1 or later.

For V5R3 the objects CGIDTAQ and CGISRVPGM has been updated to use the APIs in QZHBCGI. These APIs where previously located in QTMHCGI.

DWA

The initialization procedure of the Websydian Web Server Component servlet has been changed so it is no longer necessary to restart the Websydian Web Server Component servlet (or servlet engine) if the Websydian Web Server Component fails to connect to the Websydian Server.

Websydian 5.5

CA Plex 5.5

Websydian 5.5 is compatible with CA Plex 5.5 and the Visual C++.NET 7.1 compiler required by CA Plex 5.5. This means that Websydian 5.5 can be used with all versions of CA Plex from 4.0 to 5.5.

Enhancements

General

Support for custom datetime separators

When specifying edit masks for datetime fields in Websydian applications it was previously a requirement that a slash ('/') was used as the date separator and a colon (':') as the time separator. At run time these separators were then replaced with the platform specific separator determined by the locale/language.

It is now also possible to use a dash ('-') or a dot ('.') as date separators and a dot ('.') as the time separator in edit masks thereby forcing the Websydian application to use a specific separator that is not determined by the operating system.

Support for other encodings in WriteToFile (Java)

The WriteToFile function writes text to a file on the disk. In previous versions of Websydian the encoding of the file was determined by the platform. It is now possible to override the default platform encoding and specify another encoding; e.g. UTF-8, UTF-16, ...

This only applies to the Java platform.

iSeries date, time, and timestamp formatting functions

The runtime objects on the iSeries that formats date, time, and timestamp fields have been modified so they now use the information found in the data areas WSYDDATMSK, WSYTMEMSK and WSYDTMSMSK.

This change makes the handling of datetime fields more consistent with the other platforms supported by Websydian and also makes it easier to customize how datetime fields are formatted on the iSeries.

After changing the values in these data areas, you must restart the application services or any page that has already been shown will use the old formats.

TransacXML

The TransacXML patterns in Websydian have been enhanced improving usability for the developer and making the Modeller and Web Service patterns more intuitive and easier to use.

Improved performance in XmlElement.SingleFetch

The performance of the SingleFetch function has been drastically improved when fetching many simple elements.

Support for namespaces in TransacXML

There is now full support for XML namespaces in TransacXML. More information can be found here.

XML Schema

When an XML model has been created TransacXML now includes functionality to automatically generate an XML Schema file representing the XML model.

WSDL

Building a web service also includes the process of creating a WSDL file describing the web service. TransacXML now includes functionality that creates a WSDL file based on the information entered in the model. This WSDL file can then be used by business partners to create programs that communicate with the web service.

XmlElement functions enhanced

The functions scoped to the XmlElement pattern have been enhanced with more validation and better error handling and checking making it much easier for the developer to catch and identify an error as early in the development phase as possible.

TransacXML web service

The TransacXML web service patterns (SOAP) have been through a major revision removing all known bugs and also improving the design and interface making it easier to design and develop web service applications with TransacXML.

For more details please read the special upgrade guide for TransacXML web services.

Modelling of repeating element fields changed

The modelling of repeating element fields was somewhat complex in previous versions of Websydian. Thus in this release the way to handle repeating element fields has been simplified so it is much more intuitive to use the RepeatingElementField field.

GetFirstOccurrence enhanced with context dependent search

In previous versions of Websydian the GetFirstOccurrence function searched for the first occurrence in the entire document. This function has now been enhanced with a context parameter so the search can be limited to a sub-tree of the XML document tree.

Abstract patterns for importing or exporting XML documents

Two abstract patterns for importing or exporting XML documents have been created in Websydian 5.5. These patterns simplifies the process of creating programs that parse and/or create XML documents.

More information can be found here: ImportXMLDocument and ExportXMLDocument.

Deploying web service as J2EE application

It has now been made easier to deploy a TransacXML web service as a J2EE application using the new pattern J2eeSoapProcessor.

Bug Fixes

HTTP header names/values not compliant with HTTP standard

Some of the HTTP header name and value literals have been modified so the case for the literals comply with the HTTP standard, specifying that header values should be in lower case and header names should user upper case letters for the first letter in each word; e.g. Content-Type, Cache-Control, etc.

Strings only containing spaces not outputted (Windows CWA)

If a field in WsyDetails or WsyGrid only contained spaces then in Windows CWA these spaces would not be replaced correctly as the replacement marker would be replaced with the empty string. This has now been fixed so the correct number of spaces is written to the generated HTML page.

Listener function craches when another instance is listening on the same port

A bug in the ApplicationServiceListener function caused the function to crash if it was trying to listen on a TCP port already in use. This has now been fixed so the listener function terminates with an error message.

NullPointerException in J2EE proxy servlet

The Websydian J2EE proxy servlet threw a NullPointerException when it was terminated. This has now been fixed so the proxy servlet terminates correctly.

Problem with ApplicationServiceListener in CA Plex 5.0 and later (Java)

The ApplicationServiceListener function initialized the output field for a called function before calling the function. This caused a NullPointerException in CA Plex 5.0 and later on the Java platform.

This initialization has been removed ensuring that the ApplicationServiceListener works on all versions of CA Plex.

SERVICE_URL property for ApplicationServiceListener does not work in Java variant

The SERVICE_URL property for the ApplicationServiceListener function now also works in the Java variant. The property is an alternative for the 3 properties SERVICE_IPADDR, SERVICE_PORT, and SERVICE_NAME.

Bug in SetParameter in ParameterStore pattern

The SetParameter function in the ParameterStore pattern would always try to update the parameter even if the function just had created the parameter.

This has now been changed so SetParameter either creates the parameter (if it does not exists) or updates the value of the parameter.

Message text in RepeatedEventDetection pattern does not compile

A message text in the RepeatedEventDetection pattern has been changed. A bug in CA Plex had the effect that the message would cause compiler errors when the message text was used in functions.

XmlElement.ProcessGroup processes all instances in document

A bug in the ProcessGroup function caused it to process all instances of the scoping XML element found in the XML document instead of only those instances that occurred as child elements to the parent XML element supplied as input to the ProcessGroup function.

WSYXML/+AssignNullValue cannot handle empty null values

The meta function +AssignNullValue did not generate correct code when a simple field contained an empty null value. This has now been fixed.

WebEndUserSession cannot find WPKAF027.dll (CWA)

The WebEndUserSesssion function in the Session Management pattern tried to call the function DwaClientUpdateSession (WPKAF027) which only should be called in a DWA environment.

WebEndUserSesssion has been changed so it only calls DwaClientUpdateSession in DWA applications.

Link to Version 5.5 Upgrade Guide

The Upgrade Guide to Version 5.5 technical paper contains detailed instructions on what needs to be done when migrating a Websydian model from version 4.0/4.01 to 5.5.